
from concurrent.futures import ThreadPoolExecutor
import threading
import time
import requests


sub=30
links = ["https://static-data.eol.cn/www/2.0/school/{}/info.json".format(i) for i in range(0, 3700)]



# 定义一个准备作为线程任务的函数
def action():
    sub =0
    threading.Lock.acquire()
    data = requests.get(links[sub])
    sub=sub+1



    pass





# 创建一个包含2条线程的线程池
pool = ThreadPoolExecutor(max_workers=10)
# 向线程池提交一个task, 50会作为action()函数的参数
future1 = pool.submit(action)
# 向线程池再提交一个task, 100会作为action()函数的参数
future2 = pool.submit(action)
# 判断future1代表的任务是否结束
print(future1.done())
time.sleep(3)
# 判断future2代表的任务是否结束
print(future2.done())
# 查看future1代表的任务返回的结果
print(future1.result())
# 查看future2代表的任务返回的结果
print(future2.result())
# 关闭线程池
pool.shutdown()